Related Vulnerabilities: CVE-2020-25647  

grub_usb_device_initialize() is called to handle USB device initialization. It reads out the descriptors it needs from the USB device and uses that data to fill in some USB data structures. grub_usb_device_initialize() performs very little bounds checking and simply assumes the USB device provides sane values. This behavior can trigger memory corruption. If properly exploited, this would lead to arbitrary code execution allowing the attacker to bypass the Secure Boot mechanism.

Severity Medium

Remote No

Type Arbitrary code execution

Description

grub_usb_device_initialize() is called to handle USB device initialization. It reads out the descriptors it needs from the USB device and uses that data to fill in some USB data structures. grub_usb_device_initialize() performs very little bounds checking and simply assumes the USB device provides sane values. This behavior can trigger memory corruption. If properly exploited, this would lead to arbitrary code execution allowing the attacker to bypass the Secure Boot mechanism.

AVG-1629 grub 2:2.04-10 2:2.04.r340.g8fcfd1e0f-1 Medium Testing

https://lists.gnu.org/archive/html/grub-devel/2021-03/msg00007.html